﻿#pragma once

#include "../MonsterObject.h"
#include "../../MirDatabase/MonsterInfo.h"
#include "../../../Shared/Packet.h"

using namespace Server::MirDatabase;
namespace S = ServerPackets;

namespace Server::MirObjects::Monsters
{
    class HumanWizard : public MonsterObject
    {
    public:
        long long FearTime = 0, DecreaseMPTime = 0;
        unsigned char AttackRange = 6;
        bool Summoned = false;

    protected:
        HumanWizard(MonsterInfo *info);

        bool InAttackRange() override;

        void Attack() override;

        void ProcessAI() override;

        void ProcessTarget() override;

    public:
        void Spawned() override;

        void ChangeHP(int amount) override;

        void Die() override;

        Packet *GetInfo() override;
    };
}
